<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui"
	xmlns:c="http://java.sun.com/jsp/jstl/core">

<ui:composition  template="template.xhtml" >

	<ui:define name="principal">
	
		<h:form id="frmCadastroProduto">
		
   			<p:growl id="message" 
			         showDetail="true" 
			         globalOnly="true"
			         sticky="false"
			         life="1200" />		
			         
			<p:panel header="#{msg['label.produto.nome.tela']}" 
			         styleClass="pnFormularioCadastro">
				<h:panelGrid columns="1" >
					<p:outputLabel value="#{msg['label.produto.produto']}" />
					<p:inputText id="produto"
					             value="#{cadastroProdutoMB.produto.descProduto}"
					             size="45"
					             required="true"
					             requiredMessage="#{msg['mensagem.obrigatoria']}">
						<p:message for="produto" />		
					</p:inputText>	
					
					<p:outputLabel value="#{msg['label.produto.origem']}" />
					<p:selectOneMenu id="origem"
									 value="#{cadastroProdutoMB.produto.origem.idOrigem}" 
					                 required="true"
					             	 requiredMessage="#{msg['mensagem.obrigatoria']}">
						<f:selectItem itemLabel="Selecione a Origem do Produto" 
						              itemValue="0"/>				 
					    <f:selectItems value="#{cadastroProdutoMB.listaOrigem}"
					                   var="itens" 
					                   itemLabel="#{itens.descOrigem}"
					                   itemValue="#{itens.idOrigem}"/>
						<p:message for="origem" />	       
					</p:selectOneMenu>		     

					<p:outputLabel value="#{msg['label.produto.tipo.produto']}" />
					<p:selectOneMenu id="tipoproduto"
									 value="#{cadastroProdutoMB.produto.tipoProduto.idTipoProduto}" 
					                 required="true"
					             	 requiredMessage="#{msg['mensagem.obrigatoria']}">
						<f:selectItem itemLabel="Selecione o tipo do Produto" 
						              itemValue="0"/>				 
					    <f:selectItems value="#{cadastroProdutoMB.listaTipoProduto}"
					                   var="itens" 
					                   itemLabel="#{itens.descTipoProduto}"
					                   itemValue="#{itens.idTipoProduto}"/>
						<p:message for="tipoproduto" />	       
					</p:selectOneMenu>		 
					 
					<p:outputLabel value="#{msg['label.produto.marca']}" />
					<p:selectOneMenu id="marca"
									 value="#{cadastroProdutoMB.produto.marca.idMarca}" 
					                 required="true"
					             	 requiredMessage="#{msg['mensagem.obrigatoria']}">
						<f:selectItem itemLabel="Selecione a marca do Produto" 
						              itemValue="0"/>				 
					    <f:selectItems value="#{cadastroProdutoMB.listaMarca}"
					                   var="itens" 
					                   itemLabel="#{itens.descMarca}"
					                   itemValue="#{itens.idMarca}"/>
						<p:message for="marca" />	       
					</p:selectOneMenu>		 
					 
					<p:outputLabel value="#{msg['label.produto.fornecedor']}" />
					<p:selectOneMenu id="fornecedor"
									 value="#{cadastroProdutoMB.produto.fornecedor.idFornecedor}" 
					                 required="true"
					             	 requiredMessage="#{msg['mensagem.obrigatoria']}">
						<f:selectItem itemLabel="Selecione o Fornecedor do Produto" 
						              itemValue="0"/>				 
					    <f:selectItems value="#{cadastroProdutoMB.listaFornecedor}"
					                   var="itens" 
					                   itemLabel="#{itens.razaoSocial}"
					                   itemValue="#{itens.idFornecedor}"/>
						<p:message for="fornecedor" />	       
					</p:selectOneMenu>		 
					 
					<p:outputLabel value="#{msg['label.produto.valor.custo']}" />
					<p:inputText id="custo"
					             value="#{cadastroProdutoMB.produto.valorCusto}"
					             size="45"
					             required="true"
					             requiredMessage="#{msg['mensagem.obrigatoria']}">
						<f:convertNumber pattern="###,##0.00"/>
						<p:message for="custo" />		
					</p:inputText>	
					
					<p:outputLabel value="#{msg['label.produto.valor.venda']}" />
					<p:inputText id="venda"
					             value="#{cadastroProdutoMB.produto.valorVenda}"
					             size="45"
					             required="true"
					             requiredMessage="#{msg['mensagem.obrigatoria']}">
						<f:convertNumber pattern="###,##0.00"/>
						<p:message for="venda" />		
					</p:inputText>	

					<p:outputLabel value="#{msg['label.produto.saldoestoque']}" />
					<p:inputText id="saldo" 
					             value="#{cadastroProdutoMB.produto.saldoEstoque}"
					             size="45"
					             required="true"
					             requiredMessage="#{msg['mensagem.obrigatoria']}">
						<p:message for="saldo" />		
					</p:inputText>						
					    
				</h:panelGrid>
				<h:panelGrid columns="5"
			      	         styleClass="pgBotoes" >
					<p:commandButton value="Salvar"
					 				 update=":frmCadastroProduto, :frmListagemProduto"
							         action="#{cadastroProdutoMB.salva()}"   />
					<p:spacer width="20" height="0"/>
					<p:commandButton value="Limpar"
					 				 update=":frmCadastroProduto"
					 				 immediate="true"
					 				 action="#{cadastroProdutoMB.inicializa()}" >
						<p:resetInput target=":frmCadastroProduto" />								         
					</p:commandButton>
	               	<p:spacer width="20" height="0" />
	               	<p:commandButton value="Fechar"
	               					 immediate="true"
	               	                 action="agenda" />								
				</h:panelGrid>						
			</p:panel>
		</h:form>
		
		<h:form id="frmListagemProduto">
			<p:panel header="Produtos Cadastrados" styleClass="pnFormularioCadastro" >
				<p:dataTable id="tbProduto" 
				             value="#{cadastroProdutoMB.listaProduto}" 
				             var="reg"
				             paginator="true"
				             rows="10"
				             paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
				             rowsPerPageTemplate="5,10,15,20,25,30"
				             emptyMessage="Nenhum registro Encontrado" >
					<p:column headerText="Produto"
					          width="10%">
						<p:outputLabel value="#{reg.idProduto}" />
					</p:column>	
					<p:column headerText="Descriçao"
					          width="62%">
						<p:outputLabel value="#{reg.descProduto}"/>
					</p:column>	
					<p:column headerText="Origem"
					          width="13%">
						<p:outputLabel value="#{reg.origem.descOrigem}"/>
					</p:column>	
					<p:column headerText="Tipo"
					          width="15%">
						<p:outputLabel value="#{reg.tipoProduto.descTipoProduto}"/>
					</p:column>	
					<p:column headerText="Ações"
							  style="align: center;"		
					          width="15%">
						<p:commandLink update=":frmCadastroProduto">														            
							<h:graphicImage library="imagens" 
											name="editar.png"
											title="Editar" />
							<f:setPropertyActionListener target="#{cadastroProdutoMB.produto}" value="#{reg}" />
						</p:commandLink>
						<p:spacer width="15" />
						<p:commandLink oncomplete="PF('dlgExcluiProduto').show()" >		
							<h:graphicImage library="imagens" 
											name="excluir.png"
											title="Deletar" />
							<f:setPropertyActionListener target="#{cadastroProdutoMB.produto}" value="#{reg}" />
						</p:commandLink>
					</p:column>	
				</p:dataTable>
			</p:panel>
		</h:form>
		
		<p:dialog widgetVar="dlgExcluiProduto"  >
			<p:outputLabel value="Confirma a Exclusão do Produto?" />
			<br />
			<br />
			<p:commandButton value="Sim"
			                 action="#{cadastroProdutoMB.exclui()}"
			                 update=":frmListagemProduto :frmCadastroProduto:message"
			                 oncomplete="PF('dlgExcluiProduto').hide()" />
			<p:spacer width="5px" />
			<p:commandButton value="Não"
			                 oncomplete="PF('dlgExcluiProduto').hide()" />
		</p:dialog>				
		
	</ui:define>
	
</ui:composition>
</html>